Visual Studio (C#)嵌入图片资源Resource Embedded Resource

您所在的位置:网站首页 visual studio code怎么引用图片 Visual Studio (C#)嵌入图片资源Resource Embedded Resource

Visual Studio (C#)嵌入图片资源Resource Embedded Resource

2024-07-11 08:54| 来源: 网络整理| 查看: 265

整理了一下关于向visual studio里嵌入图片资源的方案,做下记录.

1.图片添加的方式

如果图片经常用(比如标题栏图标之类),那么最好程序运行时直接从内存中加载,这时需要把图片编译进dll或exe中.

如果不常用的图片,或者出于发布dll/exe大小的考虑,那么一般采取外挂的方式

2.将图片编译进exe/dll

前提:向vs项目中添加图片,有时删来删区发现vs不显示你添加的文件夹,此时在solution explorer中勾选显示全部file,然后找到你要的file右键包含进项目中

添加完图片后,右键属性,build action: 默认是content

wpf 选择resource

注意在属性对话框里用vs智能提示添加图片,手写urn比较麻烦

winform 选择embedded resource

 

对于一般项目,有两种方式.

其一,选择embedded resource,然后核心方法Assembly.GetManifestResourceStream(string name)将图片转为Stream,然后用BitmapSource的一个子类BitmapFrame.Create(Stream s)来创建BitmapSource

name这样写:

假如图片1.icon放在Resources文件夹下,命名空间为Test,则

Test.Resources.1.icon

其二,其实是第一种方法的升级版,一般推荐使用,就是右键项目添加Resource.resx文件,然后双击它看着添加就可以了

比如添加了1.icon,命名为test(默认名为文件名1),这样调用Resource.test 注意其System.Drawing下,是一个MarshalByRefObject

是一个非托管资源,调用System.Windows.Interop.Imaging的三个方法将其转换为BitmapSource

3.外部图片

只要注意相对路径是相对于dll/exe的即可



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3